/*
 * Copyright (c) 2025, 大连理工大学 (Dalian University of Technology)
 *
 * Licensed under the Mulan PSL v2.
 * You can use this file according to the terms and conditions of the Mulan PSL v2.
 * You may obtain a copy of the License at
 *
 *     http://license.coscl.org.cn/MulanPSL2
 *
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. SEE THE MULAN PSL v2
 * FOR MORE DETAILS.
 */

#pragma once
#include <string>
#include <vector>

#include "DBManager/Database/HDF5Database.h"
#include "DBManager/IRepository/Input/Subcase/ISubcaseRepository.h"
// #include "DBManager/Repository/HDF5/Base/RepositoryBase.h"

SG_DBMANAGER_NAMESPACE_OPEN
namespace HDF5
{
    /*
    1：某些变量的输出都存在set、media、format、
    2：位移（）内设置输出格式存储在SORTFLG
    3：todo 暂时out 参考XXXPTSET,非0则输出
    */
    struct SUBCASE                                          // NOLINT(clang-analyzer-optin.performance.Padding)
    {
        SG::DataStructure::Common::I64  SID           = 0;  /// Subcase identification number
        SG::DataStructure::Common::I64  MPCSET        = 0;  /// Multipoint constraint set (MPC)
        SG::DataStructure::Common::I64  SPCSET        = 0;  /// Single point constraint set (SPC)
        SG::DataStructure::Common::I64  ESLSET        = 0;  /// External static load set (LOAD)
        SG::DataStructure::Common::I64  REESET        = 0;  /// SG::DataStructure::Common::Real eigenvalue extraction set(METHOD(STRUCTURE))
        SG::DataStructure::Common::I64  ELDSET        = 0;  /// Element deformation set (DEFORM)
        SG::DataStructure::Common::I64  THLDSET       = 0;  /// Thermal load set (TEMP(LOAD))
        SG::DataStructure::Common::I64  THMATSET      = 0;  /// Thermal material set TEMP(MAT or INIT)
        SG::DataStructure::Common::I64  TIC           = 0;  /// Transient initial conditions (IC)
        SG::DataStructure::Common::I64  NONPTSET      = 0;  /// Nonlinear load output set (NLLOAD)
        SG::DataStructure::Common::I64  NONMEDIA      = 0;  /// Nonlinear load output media (NLLOAD)
        SG::DataStructure::Common::I64  NONFMT        = 0;  /// Nonlinear load output format (NLLOAD)
        SG::DataStructure::Common::I64  DYMLDSET      = 0;  /// Dynamic load set (DLOAD)
        SG::DataStructure::Common::I64  FEQRESET      = 0;  /// Frequency response set (FREQUENCY)
        SG::DataStructure::Common::I64  TFSET         = 0;  /// Transfer function set (TFL)
        SG::DataStructure::Common::I64  SYMFLG        = 0;  /// Symmetry flag (SYMSEQ and SUBSEQ)
        SG::DataStructure::Common::I64  LDSPTSET      = 0;  /// Load output set (OLOAD)
        SG::DataStructure::Common::I64  LDSMEDIA      = 0;  /// Load output media (OLOAD)
        SG::DataStructure::Common::I64  LDSFMT        = 0;  /// Load output format (OLOAD)
        SG::DataStructure::Common::I64  DPLPTSET      = 0;  /// Displacement, temperature, or pressure output set(DISP,THERM,PRES)
        SG::DataStructure::Common::I64  DPLMEDIA      = 0;  /// Displacement, temperature, or pressure outputmedia (DISP,THERM,PRES)
        SG::DataStructure::Common::I64  DPLFMT        = 0;  /// Displacement, temperature, or pressure outputformat (DISP,THERM,PRES)
        SG::DataStructure::Common::I64  STSPTSET      = 0;  /// Stress output set (STRESS)
        SG::DataStructure::Common::I64  STSMEDIA      = 0;  /// Stress output media (STRESS)
        SG::DataStructure::Common::I64  STSFMT        = 0;  /// Stress output format (STRESS)
        SG::DataStructure::Common::I64  FCEPTSET      = 0;  /// Force (or flux) output set (FORCE or FLUX)
        SG::DataStructure::Common::I64  FCEMEDIA      = 0;  /// Force (or flux) output media (FORCE or FLUX)
        SG::DataStructure::Common::I64  FCEFMT        = 0;  /// Force (or flux) output format (FORCE or FLUX)
        SG::DataStructure::Common::I64  ACCPTSET      = 0;  /// Acceleration (or enthalpy delta) output set(ACCEL or HDOT)
        SG::DataStructure::Common::I64  ACCMEDIA      = 0;  /// Acceleration (or enthalpy delta) output media(ACCE, HDOT)
        SG::DataStructure::Common::I64  ACCFMT        = 0;  /// Acceleration (or enthalpy delta) output format(ACCE, HDOT)
        SG::DataStructure::Common::I64  VELPTSET      = 0;  /// Velocity (or enthalpy) output set (VELOCITY orENTHALPY)
        SG::DataStructure::Common::I64  VELMEDIA      = 0;  /// Velocity (or enthalpy) output media (VELOCITY)or ENTHALPY)
        SG::DataStructure::Common::I64  VELFMT        = 0;  /// Velocity (or enthalpy) output format(VELOCITY) or ENTHALPY)
        SG::DataStructure::Common::I64  FOCPTSET      = 0;  /// Forces of single-point constraint output set(SPCFORCE)
        SG::DataStructure::Common::I64  FOCMEDIA      = 0;  /// Forces of single-point constraint output media(SPCFORCE)
        SG::DataStructure::Common::I64  FOCFMT        = 0;  /// Forces of single-point constraint output format(SPCFORCE)
        SG::DataStructure::Common::I64  TSTEPTRN      = 0;  /// Time step set for transient analysis (TSTEP)
        char                            TITLE[128]    = { 0 };  /// Title char string (TITLE)
        char                            SUBTITLE[128] = { 0 };  /// Subtitle char string (SUBTITLE)
        char                            LABEL[128]    = { 0 };  /// LABEL char string (LABEL)
        SG::DataStructure::Common::I64  STPLTFLG      = 0;      /// Model plot flag: set to 1 if OUTPUT(PLOT) isspecified
        SG::DataStructure::Common::I64  AXSYMSET      = 0;      /// Axisymmetric set (AXISYMMETRIC)
        SG::DataStructure::Common::I64  NOHARMON      = 0;      /// Number of harmonics to output (HARMONICS)
        SG::DataStructure::Common::I64  TSTRU         = 0;      ///
        SG::DataStructure::Common::I64  SETKP         = 0;      ///
        SG::DataStructure::Common::I64  FLAGKP        = 0;      ///
        char                            K2PP[8]       = { 0 };  ///
        SG::DataStructure::Common::I64  SETMP         = 0;      ///
        SG::DataStructure::Common::I64  FLAGMP        = 0;      ///
        char                            M2PP[8]       = { 0 };  ///
        SG::DataStructure::Common::I64  SETBP         = 0;      ///
        SG::DataStructure::Common::I64  FLAGBP        = 0;      ///
        char                            B2PP[8]       = { 0 };  ///
        SG::DataStructure::Common::I64  OUTRESPV      = 0;      ///
        SG::DataStructure::Common::I64  SEDR          = 0;      ///
        SG::DataStructure::Common::I64  FLDBNDY       = 0;      ///
        SG::DataStructure::Common::I64  CEESET        = 0;      ///
        SG::DataStructure::Common::I64  DAMPTBL       = 0;      ///
        SG::DataStructure::Common::I64  DYNRED        = 0;      ///
        SG::DataStructure::Common::I64  SSDSET        = 0;      ///
        SG::DataStructure::Common::I64  SSDMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  SSDFMT        = 0;      ///
        SG::DataStructure::Common::I64  SSVSET        = 0;      ///
        SG::DataStructure::Common::I64  SSVMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  SSVFMT        = 0;      ///
        SG::DataStructure::Common::I64  SSASET        = 0;      ///
        SG::DataStructure::Common::I64  SSAMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  SSAFMT        = 0;      ///
        SG::DataStructure::Common::I64  NONLINLD      = 0;      ///
        SG::DataStructure::Common::I64  PARTIT        = 0;      ///
        SG::DataStructure::Common::I64  CYCLIC        = 0;      ///
        SG::DataStructure::Common::I64  RANDOM        = 0;      ///
        SG::DataStructure::Common::I64  NONPARAM      = 0;      ///
        SG::DataStructure::Common::I64  FLUTTER       = 0;      ///
        SG::DataStructure::Common::I64  LCC           = 0;      ///
        SG::DataStructure::Common::I64  GPFSET        = 0;      ///
        SG::DataStructure::Common::I64  GPFMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  GPFFMT        = 0;      ///
        SG::DataStructure::Common::I64  ESESET        = 0;      ///
        SG::DataStructure::Common::I64  ESEMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  ESEFMT        = 0;      ///
        SG::DataStructure::Common::I64  ARFPTSET      = 0;      ///
        SG::DataStructure::Common::I64  ARFMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  ARFFMT        = 0;      ///
        SG::DataStructure::Common::I64  SEID          = 0;      ///
        SG::DataStructure::Common::I64  LCN           = 0;      ///
        SG::DataStructure::Common::I64  GUST          = 0;      ///
        SG::DataStructure::Common::I64  SEFINAL       = 0;      ///
        SG::DataStructure::Common::I64  SEMG          = 0;      ///
        SG::DataStructure::Common::I64  SEKR          = 0;      ///
        SG::DataStructure::Common::I64  SELG          = 0;      ///
        SG::DataStructure::Common::I64  SELR          = 0;      ///
        SG::DataStructure::Common::I64  SEEX          = 0;      ///
        SG::DataStructure::Common::I64  SETKG         = 0;      ///
        SG::DataStructure::Common::I64  FLAGKG        = 0;      ///
        char                            K2GG[8]       = { 0 };  ///
        SG::DataStructure::Common::I64  SETMG         = 0;      ///
        SG::DataStructure::Common::I64  FLAGMG        = 0;      ///
        char                            M2GG[8]       = { 0 };  ///
        SG::DataStructure::Common::I64  SETBG         = 0;      ///
        SG::DataStructure::Common::I64  FLAGBG        = 0;      ///
        char                            B2GG[8]       = { 0 };  ///
        SG::DataStructure::Common::I64  SVSET         = 0;      ///
        SG::DataStructure::Common::I64  SVMEDIA       = 0;      ///
        SG::DataStructure::Common::I64  SVFMT         = 0;      ///
        SG::DataStructure::Common::I64  FLUPTSET      = 0;      ///
        SG::DataStructure::Common::I64  FLUMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  FLUFMT        = 0;      ///
        SG::DataStructure::Common::I64  HOUT[3]       = { 0 };  ///
        SG::DataStructure::Common::I64  NOUT[3]       = { 0 };  ///
        SG::DataStructure::Common::I64  SETPG         = 0;      ///
        SG::DataStructure::Common::I64  FLAGPG        = 0;      ///
        char                            P2G[8]        = { 0 };  ///
        SG::DataStructure::Common::I64  LOADSET       = 0;      ///
        SG::DataStructure::Common::I64  SEMR          = 0;      ///
        SG::DataStructure::Common::I64  VONMISES      = 0;      ///
        SG::DataStructure::Common::I64  SECMDFLG      = 0;      ///
        SG::DataStructure::Common::I64  GPSPTSET      = 0;      ///
        SG::DataStructure::Common::I64  GPSMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  GPSFMT        = 0;      ///
        SG::DataStructure::Common::I64  STFSET        = 0;      ///
        SG::DataStructure::Common::I64  STFMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  STFFMT        = 0;      ///
        SG::DataStructure::Common::I64  CLOAD         = 0;      ///
        SG::DataStructure::Common::I64  SET2ID        = 0;      ///
        SG::DataStructure::Common::I64  DSAPRT        = 0;      ///
        SG::DataStructure::Common::I64  DSASTORE      = 0;      ///
        SG::DataStructure::Common::I64  DSAOUTPT      = 0;      ///
        SG::DataStructure::Common::I64  STNSET        = 0;      ///
        SG::DataStructure::Common::I64  STNMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  STNFMT        = 0;      ///
        SG::DataStructure::Common::I64  APRESS        = 0;      ///
        SG::DataStructure::Common::I64  TRIM          = 0;      ///
        SG::DataStructure::Common::I64  MODLIST       = 0;      ///
        SG::DataStructure::Common::I64  REESETF       = 0;      ///
        SG::DataStructure::Common::I64  ESDPTSET      = 0;      ///
        SG::DataStructure::Common::I64  ESDMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  ESDFMT        = 0;      ///
        SG::DataStructure::Common::I64  GSDPTSET      = 0;      ///
        SG::DataStructure::Common::I64  GSDMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  GSDFMT        = 0;      ///
        SG::DataStructure::Common::I64  SEDV          = 0;      ///
        SG::DataStructure::Common::I64  SERE          = 0;      ///
        SG::DataStructure::Common::I64  SERS          = 0;      ///
        SG::DataStructure::Common::I64  CNTSET        = 0;      ///
        SG::DataStructure::Common::I64  CNTMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  CNTFMT        = 0;      ///
        SG::DataStructure::Common::I64  DIVERG        = 0;      ///
        SG::DataStructure::Common::I64  OUTRCV        = 0;      ///
        SG::DataStructure::Common::I64  STATSUBP      = 0;      ///
        SG::DataStructure::Common::Real DFT1          = 0;      ///
        SG::DataStructure::Common::Real DFT2          = 0;      ///
        SG::DataStructure::Common::I64  ADAPT         = 0;      ///
        SG::DataStructure::Common::I64  DESOBJ        = 0;      ///
        SG::DataStructure::Common::I64  DESSUB        = 0;      ///
        SG::DataStructure::Common::I64  SUBSPAN       = 0;      ///
        SG::DataStructure::Common::I64  DESGLB        = 0;      ///
        char                            ANALYSIS[4]   = { 0 };  /// Type of analysis (ANALYSIS)
        SG::DataStructure::Common::I64  GPQSTRS       = 0;      ///
        SG::DataStructure::Common::I64  GPQFORC       = 0;      ///
        SG::DataStructure::Common::I64  GPQSTRN       = 0;      ///
        SG::DataStructure::Common::I64  SUPORT1       = 0;      ///
        SG::DataStructure::Common::I64  STATSUBB      = 0;      /// Static subcase identification number for buckling(STATSUB(BUCKLE))
        SG::DataStructure::Common::I64  BCID          = 0;      ///
        SG::DataStructure::Common::I64  AUXMODEL      = 0;      ///
        SG::DataStructure::Common::I64  ADACT         = 0;      ///
        SG::DataStructure::Common::I64  DATSET        = 0;      ///
        SG::DataStructure::Common::I64  DATMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  DATFMT        = 0;      ///
        SG::DataStructure::Common::I64  VUGSET        = 0;      ///
        SG::DataStructure::Common::I64  VUGMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  VUGFMT        = 0;      ///
        SG::DataStructure::Common::I64  MPCFSET       = 0;      ///
        SG::DataStructure::Common::I64  MPCMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  MPCFFMT       = 0;      ///
        SG::DataStructure::Common::I64  REUESET       = 0;      ///
        SG::DataStructure::Common::I64  DAMPTBLF      = 0;      ///
        SG::DataStructure::Common::I64  ITERMETH      = 0;      ///
        SG::DataStructure::Common::I64  NLSSET        = 0;      ///
        SG::DataStructure::Common::I64  NLSMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  NLSFMT        = 0;      ///
        SG::DataStructure::Common::I64  MODTRKID      = 0;      ///
        SG::DataStructure::Common::I64  DSAFORM       = 0;      ///
        SG::DataStructure::Common::I64  DSAEXPO       = 0;      ///
        SG::DataStructure::Common::I64  DSABEGIN      = 0;      ///
        SG::DataStructure::Common::I64  DSAINTVL      = 0;      ///
        SG::DataStructure::Common::I64  DSAFINAL      = 0;      ///
        SG::DataStructure::Common::I64  DSASETID      = 0;      ///
        SG::DataStructure::Common::I64  SORTFLG       = 0;      ///
        SG::DataStructure::Common::I64  RANDBIT       = 0;      ///
        char                            AECONFIG[8]   = { 0 };  ///
        SG::DataStructure::Common::I64  AESYMXY       = 0;      ///
        SG::DataStructure::Common::I64  AESYMXZ       = 0;      ///
        SG::DataStructure::Common::I64  OCIDREQ       = 0;      ///
        SG::DataStructure::Common::I64  GPEPTSET      = 0;      ///
        SG::DataStructure::Common::I64  GPEMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  GPEFMT        = 0;      ///
        SG::DataStructure::Common::I64  TEMPMAT       = 0;      ///
        SG::DataStructure::Common::I64  AECSSSET      = 0;      ///
        SG::DataStructure::Common::I64  EKEPTSET      = 0;      ///
        SG::DataStructure::Common::I64  EKEMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  EKEFMT        = 0;      ///
        SG::DataStructure::Common::Real EKETHRSH      = 0;      ///
        SG::DataStructure::Common::I64  EDEPTSET      = 0;      ///
        SG::DataStructure::Common::I64  EDEMEDIA      = 0;      ///
        SG::DataStructure::Common::I64  EDEFMT        = 0;      ///
        SG::DataStructure::Common::Real EDETHRSH      = 0;      ///
        SG::DataStructure::Common::Real DFT3          = 0;      ///
        SG::DataStructure::Common::Real DFR1          = 0;      ///
        SG::DataStructure::Common::Real DFR2          = 0;      ///
        SG::DataStructure::Common::Real DFR3          = 0;      ///
        SG::DataStructure::Common::I64  SETK4G        = 0;      ///
        SG::DataStructure::Common::I64  FLAGK4G       = 0;      ///
        char                            K42GG[8]      = { 0 };  ///
        char                            A2GG[8]       = { 0 };  ///
        SG::DataStructure::Common::I64  NK42GG        = 0;      ///
        SG::DataStructure::Common::I64  NA2GG         = 0;      ///
        SG::DataStructure::Common::I64  EFFMASET      = 0;      ///
        SG::DataStructure::Common::I64  EFFMAGID      = 0;      ///
        SG::DataStructure::Common::Real EFFMATHR      = 0;      ///
        SG::DataStructure::Common::I64  EQUILMED      = 0;      ///
        SG::DataStructure::Common::I64  EQUILGRD      = 0;      ///
        SG::DataStructure::Common::I64  RCRSET        = 0;      ///
        SG::DataStructure::Common::I64  RCRFMT        = 0;      ///
        SG::DataStructure::Common::I64  AEUXREF       = 0;      ///
        SG::DataStructure::Common::I64  GCHK          = 0;      ///
        SG::DataStructure::Common::I64  GCHKOUT       = 0;      ///
        SG::DataStructure::Common::I64  GCHKSET       = 0;      ///
        SG::DataStructure::Common::I64  GCHKGID       = 0;      ///
        SG::DataStructure::Common::Real GCHKTHR       = 0;      ///
        SG::DataStructure::Common::Real GCHKRTHR      = 0;      ///
        SG::DataStructure::Common::I64  GCHKDREC      = 0;      ///
        SG::DataStructure::Common::I64  ASPCMED       = 0;      ///
        SG::DataStructure::Common::Real ASPCEPS       = 0;      ///
        SG::DataStructure::Common::Real ASPCPRT       = 0;      ///
        SG::DataStructure::Common::I64  ASPCPCH       = 0;      ///
        SG::DataStructure::Common::I64  NK2PP         = 0;      ///
        SG::DataStructure::Common::I64  NM2PP         = 0;      ///
        SG::DataStructure::Common::I64  NB2PP         = 0;      ///
        SG::DataStructure::Common::I64  NK2GG         = 0;      ///
        SG::DataStructure::Common::I64  NM2GG         = 0;      ///
        SG::DataStructure::Common::I64  NB2GG         = 0;      ///
        SG::DataStructure::Common::I64  NP2G          = 0;      ///
        SG::DataStructure::Common::I64  GEODSET       = 0;      ///
        SG::DataStructure::Common::I64  GEODMXMN      = 0;      ///
        SG::DataStructure::Common::I64  GEODOCID      = 0;      ///
        SG::DataStructure::Common::I64  GEODNUMB      = 0;      ///
        SG::DataStructure::Common::I64  GEOLSET       = 0;      ///
        SG::DataStructure::Common::I64  GEOLMXMN      = 0;      ///
        SG::DataStructure::Common::I64  GEOLOCID      = 0;      ///
        SG::DataStructure::Common::I64  GEOLNUMB      = 0;      ///
        SG::DataStructure::Common::I64  GEOSSET       = 0;      ///
        SG::DataStructure::Common::I64  GEOSMXMN      = 0;      ///
        SG::DataStructure::Common::I64  GEOSOCID      = 0;      ///
        SG::DataStructure::Common::I64  GEOSNUMB      = 0;      ///
        SG::DataStructure::Common::I64  GEOMSET       = 0;      ///
        SG::DataStructure::Common::I64  GEOMMXMN      = 0;      ///
        SG::DataStructure::Common::I64  GEOMOCID      = 0;      ///
        SG::DataStructure::Common::I64  GEOMNUMB      = 0;      ///
        SG::DataStructure::Common::I64  GEOASET       = 0;      ///
        SG::DataStructure::Common::I64  GEOAMXMN      = 0;      ///
        SG::DataStructure::Common::I64  GEOAOCID      = 0;      ///
        SG::DataStructure::Common::I64  GEOANUMB      = 0;      ///
        SG::DataStructure::Common::I64  GEOVSET       = 0;      ///
        SG::DataStructure::Common::I64  GEOVMXMN      = 0;      ///
        SG::DataStructure::Common::I64  GEOVOCID      = 0;      ///
        SG::DataStructure::Common::I64  GEOVNUMB      = 0;      ///
        SG::DataStructure::Common::I64  NTFL          = 0;      ///
        SG::DataStructure::Common::I64  GPKESET       = 0;      ///
        SG::DataStructure::Common::I64  GPKEMEDI      = 0;      ///
        SG::DataStructure::Common::I64  GPKEFMT       = 0;      ///
        SG::DataStructure::Common::I64  SEDAMP        = 0;      ///
        SG::DataStructure::Common::I64  WCHK          = 0;      ///
        SG::DataStructure::Common::I64  WCHKOUT       = 0;      ///
        SG::DataStructure::Common::I64  WCHKSET       = 0;      ///
        SG::DataStructure::Common::I64  WCHKGID       = 0;      ///
        SG::DataStructure::Common::I64  WCHKCGI       = 0;      ///
        SG::DataStructure::Common::I64  WCHKWM        = 0;      ///
        SG::DataStructure::Common::I64  EXSEOUT       = 0;      ///
        SG::DataStructure::Common::I64  EXSEMED       = 0;      ///
        SG::DataStructure::Common::I64  EXSEUNIT      = 0;      ///
        SG::DataStructure::Common::I64  EXSERES1      = 0;      ///
        SG::DataStructure::Common::I64  EXSERES2      = 0;      ///
        SG::DataStructure::Common::I64  FK2PP         = 0;      ///
        SG::DataStructure::Common::I64  FM2PP         = 0;      ///
        SG::DataStructure::Common::I64  FB2PP         = 0;      ///
        SG::DataStructure::Common::I64  FK2GG         = 0;      ///
        SG::DataStructure::Common::I64  FM2GG         = 0;      ///
        SG::DataStructure::Common::I64  FB2GG         = 0;      ///
        char                            TICTYPE[4]    = { 0 };  ///
        SG::DataStructure::Common::I64  FK42GG        = 0;      ///
        SG::DataStructure::Common::I64  FA2GG         = 0;      ///
        SG::DataStructure::Common::I64  SUBSTEP       = 0;      ///
        SG::DataStructure::Common::I64  STEPID        = 0;      ///
        SG::DataStructure::Common::I64  NSMID         = 0;      ///
        SG::DataStructure::Common::I64  ROUTDISP      = 0;      /// Random output of DISPLACEMENT request
        SG::DataStructure::Common::I64  ROUTVELO      = 0;      /// Random output of VELOCITY request
        SG::DataStructure::Common::I64  ROUTACCE      = 0;      /// Random output of ACCELERATION request
        SG::DataStructure::Common::I64  ROUTLOAD      = 0;      /// Random output of OLOAD request
        SG::DataStructure::Common::I64  ROUTSPCF      = 0;      /// Random output of SPCFORCES request
        SG::DataStructure::Common::I64  ROUTSTRS      = 0;      /// Random output of STRESS request
        SG::DataStructure::Common::I64  ROUTFORC      = 0;      /// Random output of FORCE request
        SG::DataStructure::Common::I64  ROUTSTRN      = 0;      /// Random output of STRAIN request
        SG::DataStructure::Common::I64  ROUTMSCF      = 0;      /// Random output of MPCFORCES request
        SG::DataStructure::Common::I64  MDLSSET       = 0;      ///
        SG::DataStructure::Common::I64  MDLSMEDIA     = 0;      ///
        SG::DataStructure::Common::I64  MDLSFMT       = 0;      ///
        char                            MDLSESRT[4]   = { 0 };  ///
        SG::DataStructure::Common::Real MDLSTHRE      = 0;      ///
        SG::DataStructure::Common::I64  MDLSTFVL      = 0;      ///
        SG::DataStructure::Common::I64  MDLKSET       = 0;      ///
        SG::DataStructure::Common::I64  MDLKMEDIA     = 0;      ///
        SG::DataStructure::Common::I64  MDLKFMT       = 0;      ///
        char                            MDLKESRT[4]   = { 0 };  ///
        SG::DataStructure::Common::Real MDLKTHRE      = 0;      ///
        SG::DataStructure::Common::I64  MDLKTFVL      = 0;      ///
        SG::DataStructure::Common::I64  ACPOWSET      = 0;      ///
        SG::DataStructure::Common::I64  ACPOWMED      = 0;      ///
        SG::DataStructure::Common::I64  ACPOWFMT      = 0;      ///
        SG::DataStructure::Common::I64  ACPOWCSV      = 0;      ///
        SG::DataStructure::Common::I64  NLOUT         = 0;      ///
        SG::DataStructure::Common::I64  SEEFMNO       = 0;      ///
        char                            SEEFMHV[4]    = { 0 };  ///
        SG::DataStructure::Common::I64  SEEFMDLF      = 0;      ///
        SG::DataStructure::Common::I64  SEEFMBND      = 0;      ///
        SG::DataStructure::Common::I64  SEEFMSDP      = 0;      ///
        SG::DataStructure::Common::I64  CONNECTOR     = 0;      ///
        SG::DataStructure::Common::Real ESETHRSH      = 0;      ///
        SG::DataStructure::Common::I64  POSTUNIT      = 0;      ///
        SG::DataStructure::Common::I64  POSTOPT1      = 0;      ///
        SG::DataStructure::Common::I64  POSTOPT2      = 0;      ///
        char                            TICDIFF[4]    = { 0 };  ///
        SG::DataStructure::Common::I64  DSAESEID      = 0;      ///
        SG::DataStructure::Common::I64  MXMNGSET      = 0;      ///
        SG::DataStructure::Common::I64  MXMNGMDA      = 0;      ///
        SG::DataStructure::Common::I64  MXMNGFMT      = 0;      ///
        SG::DataStructure::Common::I64  MXMNESET      = 0;      ///
        SG::DataStructure::Common::I64  MXMNEMDA      = 0;      ///
        SG::DataStructure::Common::I64  MXMNEFMT      = 0;      ///
        SG::DataStructure::Common::I64  MCFRSET       = 0;      ///
        SG::DataStructure::Common::I64  MCFRSOLN      = 0;      ///
        SG::DataStructure::Common::Real MCFRFILT      = 0;      ///
        SG::DataStructure::Common::I64  MCFROPT       = 0;      ///
        SG::DataStructure::Common::I64  ELSUMID       = 0;      ///
        SG::DataStructure::Common::I64  ELSUMOPT      = 0;      ///
        SG::DataStructure::Common::I64  ELSUMDUM      = 0;      ///
        SG::DataStructure::Common::I64  RGYRO         = 0;      ///
        SG::DataStructure::Common::I64  CMSESET       = 0;      ///
        SG::DataStructure::Common::I64  CMSEMDIA      = 0;      ///
        SG::DataStructure::Common::I64  CMSEOPTS      = 0;      ///
        SG::DataStructure::Common::Real CMSETHRE      = 0;      ///
        SG::DataStructure::Common::I64  CMSETOPN      = 0;      ///
        SG::DataStructure::Common::I64  GPRSORT       = 0;      ///
        SG::DataStructure::Common::I64  MASSSET       = 0;      ///
        char                            AESOLN[8]     = { 0 };  ///
        char                            POSTO2NM[8]   = { 0 };  ///
        SG::DataStructure::Common::I64  RANDVAR       = 0;      ///
        SG::DataStructure::Common::I64  RSVCRQTS      = 0;      ///
        SG::DataStructure::Common::I64  RSVCOPTS      = 0;      ///
        SG::DataStructure::Common::I64  RSVCSTBS      = 0;      ///
        SG::DataStructure::Common::I64  RSVCRQTC      = 0;      ///
        SG::DataStructure::Common::I64  RSVCOPTC      = 0;      ///
        SG::DataStructure::Common::I64  RSVCSTBC      = 0;      ///
        SG::DataStructure::Common::I64  DESVAR        = 0;      ///
        SG::DataStructure::Common::I64  BCONTACTI     = 0;      ///
        char                            BCONTACTC[4]  = { 0 };  ///
        SG::DataStructure::Common::I64  MODSELS1      = 0;      ///
        SG::DataStructure::Common::I64  MODSELS2      = 0;      ///
        SG::DataStructure::Common::I64  MODSELS3      = 0;      ///
        SG::DataStructure::Common::Real MODSELS4      = 0;      ///
        SG::DataStructure::Common::Real MODSELS5      = 0;      ///
        SG::DataStructure::Common::Real MODSELS6      = 0;      ///
        SG::DataStructure::Common::Real MODSELS7      = 0;      ///
        SG::DataStructure::Common::Real MODSELS8      = 0;      ///
        SG::DataStructure::Common::Real MODSELS9      = 0;      ///
        SG::DataStructure::Common::I64  MODSELF1      = 0;      ///
        SG::DataStructure::Common::I64  MODSELF2      = 0;      ///
        SG::DataStructure::Common::I64  MODSELF3      = 0;      ///
        SG::DataStructure::Common::Real MODSELF4      = 0;      ///
        SG::DataStructure::Common::Real MODSELF5      = 0;      ///
        SG::DataStructure::Common::Real MODSELF6      = 0;      ///
        SG::DataStructure::Common::Real MODSELF7      = 0;      ///
        SG::DataStructure::Common::Real MODSELF8      = 0;      ///
        SG::DataStructure::Common::Real MODSELF9      = 0;      ///
        SG::DataStructure::Common::I64  FTNURN        = 0;      ///
        SG::DataStructure::Common::I64  SUFNAM1       = 0;      ///
        SG::DataStructure::Common::I64  SUFNAM2       = 0;      ///
        char                            ENVELOP1[4]   = { 0 };  ///
        char                            ENVELOP2[4]   = { 0 };  ///
        SG::DataStructure::Common::I64  GPFLXSET      = 0;      ///
        SG::DataStructure::Common::I64  GPFLXMED      = 0;      ///
        SG::DataStructure::Common::I64  CAMPBELL      = 0;      ///
        SG::DataStructure::Common::I64  SPLINOUT[2]   = { 0 };  ///
        SG::DataStructure::Common::I64  MONITOR       = 0;      ///
        SG::DataStructure::Common::I64  FBODYLD[2]    = { 0 };  ///
        SG::DataStructure::Common::I64  STOCHAST      = 0;      ///
        SG::DataStructure::Common::I64  EXPTLDID      = 0;      ///
        char                            EXPTLDNM[8]   = { 0 };  ///
        SG::DataStructure::Common::I64  EXPTLDSI      = 0;      ///
        char                            AERCONFIG[8]  = { 0 };  ///
        SG::DataStructure::Common::I64  NLHARM        = 0;      ///
        SG::DataStructure::Common::I64  PFMSSID       = 0;      ///
        SG::DataStructure::Common::I64  PFMSMED       = 0;      ///
        SG::DataStructure::Common::I64  PFMSFMT       = 0;      ///
        SG::DataStructure::Common::I64  PFMSSSET      = 0;      ///
        SG::DataStructure::Common::Real PFMSFLTR      = 0;      ///
        SG::DataStructure::Common::I64  PFMSOPTS      = 0;      ///
        SG::DataStructure::Common::I64  PFMSSTMP      = 0;      ///
        SG::DataStructure::Common::I64  PFMFSID       = 0;      ///
        SG::DataStructure::Common::I64  PFMFMED       = 0;      ///
        SG::DataStructure::Common::I64  PFMFFMT       = 0;      ///
        SG::DataStructure::Common::I64  PFMFSSET      = 0;      ///
        SG::DataStructure::Common::I64  PFMFPSET      = 0;      ///
        SG::DataStructure::Common::Real PFMFFLTR      = 0;      ///
        SG::DataStructure::Common::I64  PFMFOPTS      = 0;      ///
        SG::DataStructure::Common::I64  PFMFFLMP      = 0;      ///
        SG::DataStructure::Common::I64  PFMFSTMP      = 0;      ///
        SG::DataStructure::Common::I64  PFPSID        = 0;      ///
        SG::DataStructure::Common::I64  PFPMED        = 0;      ///
        SG::DataStructure::Common::I64  PFPFMT        = 0;      ///
        SG::DataStructure::Common::I64  PFPSSET       = 0;      ///
        SG::DataStructure::Common::Real PFPFLTR       = 0;      ///
        SG::DataStructure::Common::I64  PFPOPTS       = 0;      ///
        SG::DataStructure::Common::I64  PFPPSET       = 0;      ///
        SG::DataStructure::Common::I64  PFGSID        = 0;      ///
        SG::DataStructure::Common::I64  PFGMED        = 0;      ///
        SG::DataStructure::Common::I64  PFGFMT        = 0;      ///
        SG::DataStructure::Common::I64  PFGSSET       = 0;      ///
        SG::DataStructure::Common::I64  PFGGSET       = 0;      ///
        SG::DataStructure::Common::I64  NLICCASE      = 0;      ///
        SG::DataStructure::Common::I64  NLICSTEP      = 0;      ///
        SG::DataStructure::Common::Real NLICLFAC      = 0;      ///
        SG::DataStructure::Common::I64  ACFPMSET      = 0;      ///
        SG::DataStructure::Common::I64  ACFPMMED      = 0;      ///
        SG::DataStructure::Common::I64  ACFPMFMT      = 0;      ///
        SG::DataStructure::Common::I64  FRFFLAG       = 0;      ///
        SG::DataStructure::Common::I64  FRFCMPID      = 0;      ///
        SG::DataStructure::Common::I64  FRFCONST      = 0;      ///
        SG::DataStructure::Common::I64  FRFUNTNO      = 0;      ///
        SG::DataStructure::Common::I64  FRFCMPNM[2]   = { 0 };  ///
        char                            DESMOD[8]     = { 0 };  ///
        SG::DataStructure::Common::I64  RSDAMPST      = 0;      ///
        SG::DataStructure::Common::I64  RSDAMPFL      = 0;      ///
        SG::DataStructure::Common::I64  VCCT          = 0;      ///
        SG::DataStructure::Common::I64  FP2G          = 0;      ///
        SG::DataStructure::Common::I64  FRQVAR        = 0;      ///
        SG::DataStructure::Common::I64  HADAPT        = 0;      ///
        SG::DataStructure::Common::I64  BCHANGE       = 0;      ///
        SG::DataStructure::Common::I64  BCMOVE        = 0;      ///
        SG::DataStructure::Common::I64  BSQUEAL       = 0;      ///
        SG::DataStructure::Common::I64  UNGLUE        = 0;      ///
        SG::DataStructure::Common::I64  HSUBCASE      = 0;      ///
        SG::DataStructure::Common::I64  HSTEP         = 0;      ///
        SG::DataStructure::Common::Real HTIME         = 0;      ///
        SG::DataStructure::Common::I64  ERPSID        = 0;      ///
        SG::DataStructure::Common::I64  ERPMED        = 0;      ///
        SG::DataStructure::Common::I64  ERPFMT        = 0;      ///
        SG::DataStructure::Common::I64  ERPSSET       = 0;      ///
        SG::DataStructure::Common::Real ERPFLTR       = 0;      ///
        SG::DataStructure::Common::I64  ERPOPTS       = 0;      ///
        SG::DataStructure::Common::I64  ERPCSV        = 0;      ///
        SG::DataStructure::Common::Real TESTTHRR      = 0;      ///
        SG::DataStructure::Common::I64  TESTTHRI      = 0;      ///
        SG::DataStructure::Common::I64  ASMOUTFL      = 0;      ///
        SG::DataStructure::Common::I64  ASMOUTNM[2]   = { 0 };  ///
        SG::DataStructure::Common::I64  ICFUNTNO      = 0;      ///
        SG::DataStructure::Common::I64  TFOSET        = 0;      ///
        SG::DataStructure::Common::I64  TFUNIT        = 0;      ///
        SG::DataStructure::Common::I64  TFLSET        = 0;      ///
        SG::DataStructure::Common::I64  TFOPTS        = 0;      ///
        SG::DataStructure::Common::I64  NLOOPH        = 0;      ///
        SG::DataStructure::Common::I64  NLSTEP        = 0;      ///
        SG::DataStructure::Common::I64  NMODES        = 0;      ///
        SG::DataStructure::Common::I64  RCPARM        = 0;      ///
        SG::DataStructure::Common::I64  NLOPCTRL      = 0;      ///
        SG::DataStructure::Common::I64  NLOPDBG       = 0;      ///
        SG::DataStructure::Common::I64  NLOPPOST      = 0;      ///
        SG::DataStructure::Common::I64  NLOPMPCH      = 0;      ///
        SG::DataStructure::Common::I64  NLICSSTP      = 0;      ///
        SG::DataStructure::Common::I64  DEACTEL       = 0;      ///
        SG::DataStructure::Common::I64  ACTIVAT       = 0;      ///
        SG::DataStructure::Common::I64  INTENSET      = 0;      ///
        SG::DataStructure::Common::I64  INTENMED      = 0;      ///
        SG::DataStructure::Common::I64  INTENFMT      = 0;      ///
        SG::DataStructure::Common::Real NLICTOLR      = 0;      ///
        SG::DataStructure::Common::I64  PFPSSID       = 0;      ///
        SG::DataStructure::Common::I64  PFPSMED       = 0;      ///
        SG::DataStructure::Common::I64  PFPSFMT       = 0;      ///
        SG::DataStructure::Common::I64  PFPSSSET      = 0;      ///
        SG::DataStructure::Common::Real PFPSFLTR      = 0;      ///
        SG::DataStructure::Common::I64  PFPSOPTS      = 0;      ///
        SG::DataStructure::Common::I64  PFPSPSET      = 0;      ///
        SG::DataStructure::Common::I64  ACTISET       = 0;      ///
        SG::DataStructure::Common::I64  ELSOSET       = 0;      ///
        SG::DataStructure::Common::I64  ELSRSET       = 0;      ///
        SG::DataStructure::Common::I64  ELSSSET       = 0;      ///
        SG::DataStructure::Common::Real ELSTHRS       = 0;      ///
        SG::DataStructure::Common::I64  ELSBITS       = 0;      ///
        SG::DataStructure::Common::I64  WTSOSET       = 0;      ///
        SG::DataStructure::Common::I64  WTSRSET       = 0;      ///
        SG::DataStructure::Common::I64  WTSSSET       = 0;      ///
        SG::DataStructure::Common::Real WTSTHRS       = 0;      ///
        SG::DataStructure::Common::I64  WTSBITS       = 0;      ///
        SG::DataStructure::Common::I64  PACOSET       = 0;      ///
        SG::DataStructure::Common::I64  PACSSET       = 0;      ///
        SG::DataStructure::Common::I64  PACBITS       = 0;      ///
        SG::DataStructure::Common::I64  IRLOAD        = 0;      ///
        SG::DataStructure::Common::I64  ICFSET        = 0;      ///
        SG::DataStructure::Common::I64  ICFMED        = 0;      ///
        SG::DataStructure::Common::I64  ICFFMT        = 0;      ///
        SG::DataStructure::Common::I64  ICFGENST      = 0;      ///
        SG::DataStructure::Common::I64  ICFGENNM[2]   = { 0 };  ///
        SG::DataStructure::Common::I64  ICFUSEST      = 0;      ///
        SG::DataStructure::Common::I64  ICFUSENM[2]   = { 0 };  ///
        SG::DataStructure::Common::I64  HISTSET       = 0;      ///
        SG::DataStructure::Common::I64  HISTTYPE      = 0;      ///
        SG::DataStructure::Common::I64  HISTFMT       = 0;      ///
        SG::DataStructure::Common::I64  FATIGUE       = 0;      ///
        SG::DataStructure::Common::I64  FTGMED        = 0;      ///
        SG::DataStructure::Common::I64  FTGFMT        = 0;      ///
        SG::DataStructure::Common::I64  NLOPDELI      = 0;      ///
        SG::DataStructure::Common::I64  NLOPGRID      = 0;      ///
        SG::DataStructure::Common::I64  DASAVE        = 0;      ///
        SG::DataStructure::Common::I64  GVSET         = 0;      ///
        SG::DataStructure::Common::I64  GVMEDIA       = 0;      ///
        SG::DataStructure::Common::I64  GVFMT         = 0;      ///
        SG::DataStructure::Common::I64  ERMPF         = 0;      ///
        SG::DataStructure::Common::I64  NVELOSET      = 0;      ///
        SG::DataStructure::Common::I64  NVELFDEF      = 0;      ///
        SG::DataStructure::Common::I64  NVELFDTA      = 0;      ///
        SG::DataStructure::Common::Real NVELTHRS      = 0;      ///
        SG::DataStructure::Common::I64  NVELBITS      = 0;      ///
        SG::DataStructure::Common::I64  VITSOSET      = 0;      ///
        SG::DataStructure::Common::I64  VITSRSET      = 0;      ///
        SG::DataStructure::Common::I64  VITSSSET      = 0;      ///
        SG::DataStructure::Common::Real VITSTHRS      = 0;      ///
        SG::DataStructure::Common::I64  VITSBITS      = 0;      ///
        SG::DataStructure::Common::I64  THLDVER       = 0;      ///
        SG::DataStructure::Common::I64  THMATVER      = 0;      ///
        SG::DataStructure::Common::I64  NPEAK         = 0;      ///
        SG::DataStructure::Common::Real NEAR          = 0;      ///
        SG::DataStructure::Common::Real LFREQ         = 0;      ///
        SG::DataStructure::Common::Real HFREQ         = 0;      ///
        SG::DataStructure::Common::I64  RTYPE         = 0;      ///
        SG::DataStructure::Common::I64  PSCALE        = 0;      ///
        SG::DataStructure::Common::I64  NSAMP         = 0;      ///
        SG::DataStructure::Common::I64  MONSET        = 0;      ///
        SG::DataStructure::Common::I64  SEED          = 0;      ///
        SG::DataStructure::Common::Real OFFD          = 0;      ///
        SG::DataStructure::Common::I64  FSORT2        = 0;      ///
        SG::DataStructure::Common::I64  MFREQ         = 0;      ///
        char                            BCONTACT[4]   = { 0 };  ///
        SG::DataStructure::Common::I64  SOLNID        = 0;      ///
        SG::DataStructure::Common::I64  ExtDROut      = 0;      ///
        SG::DataStructure::Common::I64  ExtDROmd      = 0;      ///
        SG::DataStructure::Common::I64  ExtDROun      = 0;      ///
        SG::DataStructure::Common::I64  ExtDRIn       = 0;      ///
        SG::DataStructure::Common::I64  ExtDRImd      = 0;      ///
        SG::DataStructure::Common::I64  ExtDRIun      = 0;      ///
        SG::DataStructure::Common::I64  FemCheck      = 0;      ///
        SG::DataStructure::Common::I64  HDF5DA        = 0;      ///
        SG::DataStructure::Common::I64  LSEM          = 0;      ///
        SG::DataStructure::Common::I64  SYM_LEN       = 0;      ///
        SG::DataStructure::Common::I64  SYM_POS       = 0;      ///
        SG::DataStructure::Common::I64  DOMAIN_ID     = 0;      ///
    };
};  // namespace HDF5

SG_DBMANAGER_NAMESPACE_CLOSE
template <>
inline HighFive::DataType HighFive::create_datatype<SG::DBManager::HDF5::SUBCASE> ()
{
    HighFive::CompoundType compoundType = {
        { "SID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MPCSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SPCSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESLSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "REESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELDSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "THLDSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "THMATSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TIC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NONPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NONMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NONFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DYMLDSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FEQRESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TFSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SYMFLG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "LDSPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "LDSMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "LDSFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DPLPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DPLMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DPLFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STSPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STSMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STSFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FCEPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FCEMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FCEFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACCPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACCMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACCFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VELPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VELMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VELFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FOCPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FOCMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FOCFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TSTEPTRN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TITLE", HighFive::create_datatype<char[128]> (), 1, true },
        { "SUBTITLE", HighFive::create_datatype<char[128]> (), 1, true },
        { "LABEL", HighFive::create_datatype<char[128]> (), 1, true },
        { "STPLTFLG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AXSYMSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NOHARMON", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TSTRU", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SETKP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGKP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "K2PP", HighFive::create_datatype<char[8]> (), 1, true },
        { "SETMP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGMP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "M2PP", HighFive::create_datatype<char[8]> (), 1, true },
        { "SETBP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGBP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "B2PP", HighFive::create_datatype<char[8]> (), 1, true },
        { "OUTRESPV", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEDR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLDBNDY", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CEESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DAMPTBL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DYNRED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSDSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSDMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSDFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSVSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSVMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSVFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSASET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSAMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SSAFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NONLINLD", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PARTIT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CYCLIC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RANDOM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NONPARAM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLUTTER", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "LCC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPFSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPFMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPFFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESEMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESEFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ARFPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ARFMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ARFFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "LCN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GUST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEFINAL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEMG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEKR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SELG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SELR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEEX", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SETKG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGKG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "K2GG", HighFive::create_datatype<char[8]> (), 1, true },
        { "SETMG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGMG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "M2GG", HighFive::create_datatype<char[8]> (), 1, true },
        { "SETBG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGBG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "B2GG", HighFive::create_datatype<char[8]> (), 1, true },
        { "SVSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SVMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SVFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLUPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLUMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLUFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HOUT", HighFive::create_datatype<SG::DataStructure::Common::I64[3]> (), SG::DBManager::FIELD_SIZE, true },
        { "NOUT", HighFive::create_datatype<SG::DataStructure::Common::I64[3]> (), SG::DBManager::FIELD_SIZE, true },
        { "SETPG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGPG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "P2G", HighFive::create_datatype<char[8]> (), 1, true },
        { "LOADSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEMR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VONMISES", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SECMDFLG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPSPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPSMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPSFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STFSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STFMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STFFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CLOAD", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SET2ID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSAPRT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSASTORE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSAOUTPT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STNSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STNMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STNFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "APRESS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TRIM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODLIST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "REESETF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESDPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESDMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESDFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GSDPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GSDMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GSDFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEDV", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SERE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SERS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CNTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CNTMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CNTFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DIVERG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "OUTRCV", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STATSUBP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DFT1", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "DFT2", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "ADAPT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DESOBJ", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DESSUB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SUBSPAN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DESGLB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ANALYSIS", HighFive::create_datatype<char[4]> (), 1, true },
        { "GPQSTRS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPQFORC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPQSTRN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SUPORT1", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STATSUBB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "BCID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AUXMODEL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ADACT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DATSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DATMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DATFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VUGSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VUGMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VUGFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MPCFSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MPCMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MPCFFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "REUESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DAMPTBLF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ITERMETH", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLSMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLSFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODTRKID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSAFORM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSAEXPO", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSABEGIN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSAINTVL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSAFINAL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DSASETID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SORTFLG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RANDBIT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AECONFIG", HighFive::create_datatype<char[8]> (), 1, true },
        { "AESYMXY", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AESYMXZ", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "OCIDREQ", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPEPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPEMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPEFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TEMPMAT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AECSSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EKEPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EKEMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EKEFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EKETHRSH", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "EDEPTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EDEMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EDEFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EDETHRSH", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "DFT3", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "DFR1", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "DFR2", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "DFR3", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "SETK4G", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FLAGK4G", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "K42GG", HighFive::create_datatype<char[8]> (), 1, true },
        { "A2GG", HighFive::create_datatype<char[8]> (), 1, true },
        { "NK42GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NA2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EFFMASET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EFFMAGID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EFFMATHR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "EQUILMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EQUILGRD", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RCRSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RCRFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AEUXREF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GCHK", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GCHKOUT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GCHKSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GCHKGID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GCHKTHR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "GCHKRTHR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "GCHKDREC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ASPCMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ASPCEPS", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "ASPCPRT", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "ASPCPCH", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NK2PP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NM2PP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NB2PP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NK2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NM2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NB2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NP2G", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEODSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEODMXMN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEODOCID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEODNUMB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOLSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOLMXMN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOLOCID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOLNUMB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOSMXMN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOSOCID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOSNUMB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOMSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOMMXMN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOMOCID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOMNUMB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOASET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOAMXMN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOAOCID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOANUMB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOVSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOVMXMN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOVOCID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GEOVNUMB", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NTFL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPKESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPKEMEDI", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPKEFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEDAMP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WCHK", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WCHKOUT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WCHKSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WCHKGID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WCHKCGI", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WCHKWM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EXSEOUT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EXSEMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EXSEUNIT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EXSERES1", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EXSERES2", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FK2PP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FM2PP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FB2PP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FK2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FM2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FB2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TICTYPE", HighFive::create_datatype<char[4]> (), 1, true },
        { "FK42GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FA2GG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SUBSTEP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "STEPID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NSMID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTDISP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTVELO", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTACCE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTLOAD", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTSPCF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTSTRS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTFORC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTSTRN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ROUTMSCF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLSMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLSFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLSESRT", HighFive::create_datatype<char[4]> (), 1, true },
        { "MDLSTHRE", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MDLSTFVL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLKSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLKMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLKFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MDLKESRT", HighFive::create_datatype<char[4]> (), 1, true },
        { "MDLKTHRE", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MDLKTFVL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACPOWSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACPOWMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACPOWFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACPOWCSV", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOUT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEEFMNO", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEEFMHV", HighFive::create_datatype<char[4]> (), 1, true },
        { "SEEFMDLF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEEFMBND", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEEFMSDP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CONNECTOR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ESETHRSH", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "POSTUNIT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "POSTOPT1", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "POSTOPT2", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TICDIFF", HighFive::create_datatype<char[4]> (), 1, true },
        { "DSAESEID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MXMNGSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MXMNGMDA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MXMNGFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MXMNESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MXMNEMDA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MXMNEFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MCFRSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MCFRSOLN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MCFRFILT", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MCFROPT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELSUMID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELSUMOPT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELSUMDUM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RGYRO", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CMSESET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CMSEMDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CMSEOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CMSETHRE", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "CMSETOPN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPRSORT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MASSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AESOLN", HighFive::create_datatype<char[8]> (), 1, true },
        { "POSTO2NM", HighFive::create_datatype<char[8]> (), 1, true },
        { "RANDVAR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RSVCRQTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RSVCOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RSVCSTBS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RSVCRQTC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RSVCOPTC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RSVCSTBC", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DESVAR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "BCONTACTI", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "BCONTACTC", HighFive::create_datatype<char[4]> (), 1, true },
        { "MODSELS1", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODSELS2", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODSELS3", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODSELS4", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELS5", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELS6", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELS7", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELS8", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELS9", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELF1", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODSELF2", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODSELF3", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MODSELF4", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELF5", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELF6", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELF7", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELF8", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "MODSELF9", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "FTNURN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SUFNAM1", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SUFNAM2", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ENVELOP1", HighFive::create_datatype<char[4]> (), 1, true },
        { "ENVELOP2", HighFive::create_datatype<char[4]> (), 1, true },
        { "GPFLXSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GPFLXMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "CAMPBELL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SPLINOUT", HighFive::create_datatype<SG::DataStructure::Common::I64[2]> (), SG::DBManager::FIELD_SIZE, true },
        { "MONITOR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FBODYLD", HighFive::create_datatype<SG::DataStructure::Common::I64[2]> (), SG::DBManager::FIELD_SIZE, true },
        { "STOCHAST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EXPTLDID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "EXPTLDNM", HighFive::create_datatype<char[8]> (), 1, true },
        { "EXPTLDSI", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "AERCONFIG", HighFive::create_datatype<char[8]> (), 1, true },
        { "NLHARM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMSSID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMSMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMSFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMSSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMSFLTR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "PFMSOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMSSTMP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFSID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFPSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFFLTR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "PFMFOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFFLMP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFMFSTMP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPSID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPFLTR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "PFPOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPPSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFGSID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFGMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFGFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFGSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFGGSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLICCASE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLICSTEP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLICLFAC", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "ACFPMSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACFPMMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACFPMFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FRFFLAG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FRFCMPID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FRFCONST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FRFUNTNO", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FRFCMPNM", HighFive::create_datatype<SG::DataStructure::Common::I64[2]> (), SG::DBManager::FIELD_SIZE, true },
        { "DESMOD", HighFive::create_datatype<char[8]> (), 1, true },
        { "RSDAMPST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RSDAMPFL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VCCT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FP2G", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FRQVAR", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HADAPT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "BCHANGE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "BCMOVE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "BSQUEAL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "UNGLUE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HSUBCASE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HSTEP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HTIME", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "ERPSID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ERPMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ERPFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ERPSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ERPFLTR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "ERPOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ERPCSV", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TESTTHRR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "TESTTHRI", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ASMOUTFL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ASMOUTNM", HighFive::create_datatype<SG::DataStructure::Common::I64[2]> (), SG::DBManager::FIELD_SIZE, true },
        { "ICFUNTNO", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TFOSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TFUNIT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TFLSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "TFOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOOPH", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLSTEP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NMODES", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "RCPARM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOPCTRL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOPDBG", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOPPOST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOPMPCH", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLICSSTP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DEACTEL", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACTIVAT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "INTENSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "INTENMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "INTENFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLICTOLR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "PFPSSID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPSMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPSFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPSSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPSFLTR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "PFPSOPTS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PFPSPSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ACTISET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELSOSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELSRSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELSSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ELSTHRS", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "ELSBITS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WTSOSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WTSRSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WTSSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "WTSTHRS", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "WTSBITS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PACOSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PACSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PACBITS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "IRLOAD", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ICFSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ICFMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ICFFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ICFGENST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ICFGENNM", HighFive::create_datatype<SG::DataStructure::Common::I64[2]> (), SG::DBManager::FIELD_SIZE, true },
        { "ICFUSEST", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ICFUSENM", HighFive::create_datatype<SG::DataStructure::Common::I64[2]> (), SG::DBManager::FIELD_SIZE, true },
        { "HISTSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HISTTYPE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HISTFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FATIGUE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FTGMED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FTGFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOPDELI", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NLOPGRID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DASAVE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GVSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GVMEDIA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "GVFMT", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ERMPF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NVELOSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NVELFDEF", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NVELFDTA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NVELTHRS", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "NVELBITS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VITSOSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VITSRSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VITSSSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "VITSTHRS", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "VITSBITS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "THLDVER", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "THMATVER", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NPEAK", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NEAR", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "LFREQ", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "HFREQ", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "RTYPE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "PSCALE", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "NSAMP", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MONSET", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SEED", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "OFFD", HighFive::create_datatype<SG::DataStructure::Common::Real> () },
        { "FSORT2", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "MFREQ", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "BCONTACT", HighFive::create_datatype<char[4]> (), 1, true },
        { "SOLNID", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ExtDROut", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ExtDROmd", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ExtDROun", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ExtDRIn", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ExtDRImd", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "ExtDRIun", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "FemCheck", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "HDF5DA", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "LSEM", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SYM_LEN", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "SYM_POS", HighFive::create_datatype<SG::DataStructure::Common::I64> () },
        { "DOMAIN_ID", HighFive::create_datatype<SG::DataStructure::Common::I64> () }
    };
    return compoundType;
}



SG_DBMANAGER_HDF5_NAMESPACE_OPEN

class SubcaseRepository : public ISubcaseRepository  //, public RepositoryBase
{
  public:
    SubcaseRepository (HDF5Database& H5DataBaseSP);
    virtual ~SubcaseRepository ();

    void Initial (SG::Utility::SGParameter entity) override;

    SG::Utility::SGParameter GetSubcase () override;

  protected:
    HDF5Database& m_H5DataBase;
};

SG_DBMANAGER_HDF5_NAMESPACE_CLOSE